package io;

import java.io.*;

/**
 * @Author Justin Parker
 * @Date 2024/7/16 0016 15:32
 * @Version 1.0
 */
public class FileCopyDemo03 {
    /*
        基于缓冲流，文件复制
     */
    public static void main(String[] args) throws IOException {
        //1.构建输入输出流对象（缓冲流增强文件流）
        BufferedInputStream bis =
                new BufferedInputStream( //处理流（这个流对象内置一个缓冲区-byte[]）
                new FileInputStream("./a1.jpg"));//节点流

        BufferedOutputStream bos =
                new BufferedOutputStream(//处理流
                        new FileOutputStream("./c.jpg"));//节点流
        //2. 读写数据（拷贝）
        byte [] data = new byte[1024];
        int len = 0;
        while((len = bis.read(data))!=-1){
            bos.write(data,0,len);
        }
        System.out.println("复制完成");
        bos.flush();//这里表示刷新缓冲区内容
        //3. 关闭缓存（关闭外层流时，内层流会自动关闭）
        bis.close();
        bos.close();
    }
}
